package com.yanqu.road.server.manger.config.grandchild.talent.entity;

import java.util.HashMap;
import java.util.Map;

public final class TalentTriggerSkillResultBuilder {
    private int lockQuality;
    private int addQuality;
    private int earnSpeedAddition;
    private Map<Integer, Integer> addFlairList = new HashMap<>();
    private int examEarnSpeedAddition;
    private int addMaxLv;
    private int addLv;
    private int teacherExpAddition;
    private int baiYeExpAddition;
    private boolean topFloat;
    private int examWeightAddition;
    private boolean active;

    private TalentTriggerSkillResultBuilder() {
    }

    public static TalentTriggerSkillResultBuilder aTalentTriggerSkillResult() {
        return new TalentTriggerSkillResultBuilder();
    }

    public TalentTriggerSkillResultBuilder setLockQuality(int lockQuality) {
        this.lockQuality = lockQuality;
        return this;
    }

    public TalentTriggerSkillResultBuilder setAddQuality(int addQuality) {
        this.addQuality = addQuality;
        return this;
    }

    public TalentTriggerSkillResultBuilder setEarnSpeedAddition(int earnSpeedAddition) {
        this.earnSpeedAddition = earnSpeedAddition;
        return this;
    }

    public TalentTriggerSkillResultBuilder setAddFlairList(Map<Integer, Integer> addFlairList) {
        this.addFlairList = addFlairList;
        return this;
    }

    public TalentTriggerSkillResultBuilder setExamEarnSpeedAddition(int examEarnSpeedAddition) {
        this.examEarnSpeedAddition = examEarnSpeedAddition;
        return this;
    }

    public TalentTriggerSkillResultBuilder setAddMaxLv(int addMaxLv) {
        this.addMaxLv = addMaxLv;
        return this;
    }

    public TalentTriggerSkillResultBuilder setAddLv(int addLv) {
        this.addLv = addLv;
        return this;
    }

    public TalentTriggerSkillResultBuilder setTeacherExpAddition(int teacherExpAddition) {
        this.teacherExpAddition = teacherExpAddition;
        return this;
    }

    public TalentTriggerSkillResultBuilder setBaiYeExpAddition(int baiYeExpAddition) {
        this.baiYeExpAddition = baiYeExpAddition;
        return this;
    }

    public TalentTriggerSkillResultBuilder setTopFloat(boolean topFloat) {
        this.topFloat = topFloat;
        return this;
    }

    public TalentTriggerSkillResultBuilder setExamWeightAddition(int examWeightAddition) {
        this.examWeightAddition = examWeightAddition;
        return this;
    }

    public TalentTriggerSkillResultBuilder setActive(boolean active) {
        this.active = active;
        return this;
    }

    public TalentTriggerSkillResult build() {
        TalentTriggerSkillResult talentTriggerSkillResult = new TalentTriggerSkillResult();
        talentTriggerSkillResult.setLockQuality(lockQuality);
        talentTriggerSkillResult.setAddQuality(addQuality);
        talentTriggerSkillResult.setEarnSpeedAddition(earnSpeedAddition);
        talentTriggerSkillResult.setAddFlairList(addFlairList);
        talentTriggerSkillResult.setExamEarnSpeedAddition(examEarnSpeedAddition);
        talentTriggerSkillResult.setAddMaxLv(addMaxLv);
        talentTriggerSkillResult.setAddLv(addLv);
        talentTriggerSkillResult.setTeacherExpAddition(teacherExpAddition);
        talentTriggerSkillResult.setBaiYeExpAddition(baiYeExpAddition);
        talentTriggerSkillResult.setTopFloat(topFloat);
        talentTriggerSkillResult.setExamWeightAddition(examWeightAddition);
        talentTriggerSkillResult.setActive(active);
        return talentTriggerSkillResult;
    }
}
